Imports System.Data.Objects

Public Class PoblaciónRepository
    Inherits BaseEntityRepository(Of Población)

    Private oSets() As ObjectSet(Of Población)

    Public Sub New(ByVal context As AsindoContext)
        MyBase.New(context)
        oSets = {context.Poblaciones}
    End Sub

    Public Overrides Function GetID(ByVal obj As Población) As Integer
        Return obj.Id
    End Function

    Protected Overrides Function GetByIdQuery(ByVal qbase As IQueryable(Of Población), ByVal id As Integer) As IQueryable(Of Población)
        Return qbase.Where(Function(r) r.Id = id)
    End Function

    Protected Overrides ReadOnly Property MainObjectSet As ObjectSet(Of Población)
        Get
            Return Context.Poblaciones
        End Get
    End Property

    Protected Overrides ReadOnly Property ObjectSets As ICollection(Of ObjectSet(Of Población))
        Get
            Return oSets
        End Get
    End Property

    Public Function Desplegable() As List(Of Población)
        Return All.OrderBy(Function(pob) pob.Nombre).ToList
    End Function


    Public Overrides Function CreateDetached() As Población
        Return New Población
    End Function
End Class
